<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2006 DAKOSY AG (http://www.dakosy.de) -->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
	<xsd:element name="Document">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element name="Metainfo" type="metainfoDef">
					<xsd:annotation>
						<xsd:documentation>General Information</xsd:documentation>
						<xsd:documentation>Information on the transmitted data.</xsd:documentation>
					</xsd:annotation>
				</xsd:element>
				<xsd:element name="Messages">
					<xsd:complexType>
						<xsd:sequence maxOccurs="unbounded">
							<xsd:element name="message" type="messageDef"/>
						</xsd:sequence>
					</xsd:complexType>
				</xsd:element>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="businessUnitDef">
		<xsd:annotation>
			<xsd:documentation>Business unit</xsd:documentation>
			<xsd:documentation>Location of a branch office.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Code" type="String0..17">
				<xsd:annotation>
					<xsd:documentation>Place/ Location code</xsd:documentation>
					<xsd:documentation>UN/Locode; e.g. the location of the user&apos;s branch office.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Name" type="String0..35" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Location name.</xsd:documentation>
					<xsd:documentation>If there is no UN/LoCode available for this place, alternatively the name can be set.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="CarrierTyp">
		<xsd:sequence>
			<xsd:element name="Code" type="String4..4" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>carrier code</xsd:documentation>
					<xsd:documentation>according to DAKOSY key directory carrier code (Reedercodes)</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Position" type="Integer1..3" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>carrier position</xsd:documentation>
					<xsd:documentation>
position of the goods within the original order of the carrier
mandatory if form type = L18
          </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="communicationDef">
		<xsd:annotation>
			<xsd:documentation>Communication information.</xsd:documentation>
			<xsd:documentation>Contains information on sender, recipients and creation time.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Participants">
				<xsd:annotation>
					<xsd:documentation>Communication participants</xsd:documentation>
					<xsd:documentation>Up to 11 entries can be sent:</xsd:documentation>
					<xsd:documentation>SENDER - mandatory with DAKOSY-code</xsd:documentation>
					<xsd:documentation>EDI_PROVIDER - optional; &apos;DAKOSY&apos;, if message should be processed by DAKOSY</xsd:documentation>
					<xsd:documentation>RECIPIENT - mandatory with DAKOSY-Code. Maximum of nine entries is possible.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence minOccurs="2" maxOccurs="11">
						<xsd:element name="Participant" type="participantDef"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="CreationTime" type="xsd:dateTime">
				<xsd:annotation>
					<xsd:documentation>Date and time of message creation.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ContainerTyp">
		<xsd:sequence>
			<xsd:element name="Length" type="Int2..2" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>container length</xsd:documentation>
					<xsd:documentation>required if sign empty/full = E - according to HABIS code directory A18</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Height" type="Int2..2" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>container height</xsd:documentation>
					<xsd:documentation>
height of the container
according to HABIS code directory A19
          </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Type" type="String2..2" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>container type</xsd:documentation>
					<xsd:documentation>required if sign empty/full = E - according to HABIS code directory A05</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="ISOCode" type="String4..4" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>ISO-code</xsd:documentation>
					<xsd:documentation>container ISO-code</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Construction" type="String0..1" minOccurs="0" maxOccurs="3">
				<xsd:annotation>
					<xsd:documentation>container construction</xsd:documentation>
					<xsd:documentation>
A = aluminium, 
S = steel
P = plywood
combinations of more than one type of material are possible.
          </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Characteristics" type="String0..3" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>container distinguishing characteristics</xsd:documentation>
					<xsd:documentation>
R = individual ocean                  
        carrier 
L = leasing or R/L
          </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="DischargeTyp">
		<xsd:sequence>
			<xsd:element name="Date" type="xsd:date" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>date of discharge</xsd:documentation>
					<xsd:documentation>Format: YYYYMMDD</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Time" type="xsd:time" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>time of discharge</xsd:documentation>
					<xsd:documentation>
Format: HH:MM
mandatory if form type = C18
          </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="DispatcherTyp">
		<xsd:sequence>
			<xsd:element name="Name" type="String0..20">
				<xsd:annotation>
					<xsd:documentation>dispatcher</xsd:documentation>
					<xsd:documentation>name of the dispatcher</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="TelephoneNumber" type="String0..20">
				<xsd:annotation>
					<xsd:documentation>telphone number of the dispatcher</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="Int1..2">
		<xsd:restriction base="xsd:positiveInteger">
			<xsd:maxInclusive value="2"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="Int2..2">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="2"/>
			<xsd:maxLength value="2"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="Int3..3">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="3"/>
			<xsd:maxLength value="3"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="Integer1..3">
		<xsd:restriction base="xsd:positiveInteger">
			<xsd:totalDigits value="3"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="ListingTyp">
		<xsd:sequence>
			<xsd:element name="ContainerPrefix" type="String0..4" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>container prefix</xsd:documentation>
					<xsd:documentation>listing of multiple prefixes is only allowed for empty containers</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="ContainerFrom" type="String0..6" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>container number from</xsd:documentation>
					<xsd:documentation>
lowers bounds of a number range for empty containers
listing of multiple serial numbers is only allowed for empty containers
          </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="ContainerTo" type="String0..6" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>container number to</xsd:documentation>
					<xsd:documentation>
upper bounds of a number range for empty containers
listing of multiple serial numbers is only allowed for empty containers
          </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="messageDef">
		<xsd:annotation>
			<xsd:documentation>General Message definition</xsd:documentation>
			<xsd:documentation>Describes the contents of a message (metainfo and data)</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Metainfo" type="messageInfoDef"/>
			<xsd:element name="Release" type="ReleaseType"/>
		</xsd:sequence>
		<xsd:attribute name="ReferenceNumber" use="required">
			<xsd:simpleType>
				<xsd:restriction base="xsd:string">
					<xsd:minLength value="1"/>
					<xsd:maxLength value="35"/>
				</xsd:restriction>
			</xsd:simpleType>
		</xsd:attribute>
		<xsd:attribute name="Status" use="required">
			<xsd:simpleType>
				<xsd:restriction base="xsd:NMTOKEN">
					<xsd:enumeration value="original"/>
					<xsd:enumeration value="replace"/>
					<xsd:enumeration value="update"/>
				</xsd:restriction>
			</xsd:simpleType>
		</xsd:attribute>
	</xsd:complexType>
	<xsd:complexType name="messageInfoDef">
		<xsd:sequence>
			<xsd:element name="User" type="userDef" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>User information</xsd:documentation>
					<xsd:documentation>Information on the user who sent the message.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="metainfoDef">
		<xsd:annotation>
			<xsd:documentation>Metainfo</xsd:documentation>
			<xsd:documentation>Contains information concerning transaction type, communication parties etc.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Transaction" type="transactionDef">
				<xsd:annotation>
					<xsd:documentation>Transaction type</xsd:documentation>
					<xsd:documentation>Specifies the transaction type (GM01, AB01 etc.). Only one transaction per file is allowed. Different types must be sent in separate files.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Application" type="String0..35" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Application name</xsd:documentation>
					<xsd:documentation>Name of the application served by the interface.</xsd:documentation>
					<xsd:documentation>E.g. SEEDOS, ATLAS</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Communication" type="communicationDef"/>
		</xsd:sequence>
		<xsd:attribute name="Test" type="xsd:boolean" default="0">
			<xsd:annotation>
				<xsd:documentation>Testflag</xsd:documentation>
				<xsd:documentation>0 - false (default);</xsd:documentation>
				<xsd:documentation>1- true; transmission for test purpose</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="Count" type="xsd:int">
			<xsd:annotation>
				<xsd:documentation>Number of messages</xsd:documentation>
				<xsd:documentation>Number of messages (elements) that are collected in the transmitted file.</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="ExchangeNumber" type="String1..10" use="required"/>
	</xsd:complexType>
	<xsd:complexType name="OceanCarrierTyp">
		<xsd:sequence>
			<xsd:element name="OceanCarrierCode" type="String0..4">
				<xsd:annotation>
					<xsd:documentation>ocean carrier code</xsd:documentation>
					<xsd:documentation>code has to be agrred upon between the quay operator and the liner agent</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Abbreviation" type="String0..20" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>abbreviation of the ocean carrier</xsd:documentation>
					<xsd:documentation>abbriviated name of the ocean carrier</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Depot" type="String0..4" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>depot/stock</xsd:documentation>
					<xsd:documentation>field indicates from which of the ocean carriers stocks the container should be taken from</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="participantDef">
		<xsd:sequence>
			<xsd:element name="Code" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>DAKOSY-code</xsd:documentation>
					<xsd:documentation>4-letter code identifying the participant</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:simpleContent>
						<xsd:extension base="xsd:string">
							<xsd:attribute name="Alias" use="required">
								<xsd:annotation>
									<xsd:documentation>application usage</xsd:documentation>
									<xsd:documentation>Alias code. Describes how the participant is identified in another system, e.g. DAK as DAKOSY-code. Other identifiers are not specified yet.</xsd:documentation>
								</xsd:annotation>
								<xsd:simpleType>
									<xsd:restriction base="xsd:token">
										<xsd:enumeration value="DAK"/>
									</xsd:restriction>
								</xsd:simpleType>
							</xsd:attribute>
						</xsd:extension>
					</xsd:simpleContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="Name" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>participant name</xsd:documentation>
					<xsd:documentation>just for informal use</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Pwd" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Password</xsd:documentation>
					<xsd:documentation>Needs only to be set if required by the specified role.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
		<xsd:attribute name="Role" use="required">
			<xsd:annotation>
				<xsd:documentation>
SENDER
RECIPIENT
EDI_PROVIDER
        </xsd:documentation>
			</xsd:annotation>
			<xsd:simpleType>
				<xsd:restriction base="xsd:NMTOKEN">
					<xsd:enumeration value="EDI_PROVIDER"/>
					<xsd:enumeration value="RECIPIENT"/>
					<xsd:enumeration value="SENDER"/>
				</xsd:restriction>
			</xsd:simpleType>
		</xsd:attribute>
	</xsd:complexType>
	<xsd:complexType name="ReferenceTyp">
		<xsd:sequence>
			<xsd:element name="ReferenceType" type="String1..1"/>
			<xsd:element name="Reference" type="String1..16"/>
			<xsd:element name="ModeOfTransport" type="String1..1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ReleaseContainerTyp">
		<xsd:sequence>
			<xsd:element name="Position" type="Int2..2">
				<xsd:annotation>
					<xsd:documentation>position</xsd:documentation>
					<xsd:documentation>container position</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="NumberOfContainers" type="Int3..3">
				<xsd:annotation>
					<xsd:documentation>number of containers</xsd:documentation>
					<xsd:documentation>only if sign empty/full = E</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="EmptyFull" type="String1..1">
				<xsd:annotation>
					<xsd:documentation>sign empty/full</xsd:documentation>
					<xsd:documentation>
E = empty
F = full
          </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="ContainerNumber" type="String0..12" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>container number</xsd:documentation>
					<xsd:documentation>
required if sign empty/full = F
format: 
bytes content
1 -  4 Prefix
5 - 12 Number
          </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Container" type="ContainerTyp" minOccurs="0"/>
			<xsd:element name="Listing" type="ListingTyp" minOccurs="0" maxOccurs="3"/>
			<xsd:element name="RentedContainer" type="String1..1" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>indicator rented container</xsd:documentation>
					<xsd:documentation>
Y = yes
N = no
          </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Damaged" type="String1..1" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>indicator damaged</xsd:documentation>
					<xsd:documentation>
Y = yes
N = no
          </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="CSCPermit" type="String0..4" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>CSC-permit</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="MaxGrossWeight" type="Int1..2" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>maximum gross weight</xsd:documentation>
					<xsd:documentation>weight in tons</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="LowestTaraWeight" type="String1..1" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>indicator lowest tara weight</xsd:documentation>
					<xsd:documentation>
Y = yes
N = no
          </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="AcceptationOfCustomsBond" type="String1..1">
				<xsd:annotation>
					<xsd:documentation>indicator acceptation of customs bond</xsd:documentation>
					<xsd:documentation>
Y = yes
N = no
          </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Comments" type="String0..20" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>comments</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="LiabilityCertificate" type="String1..1" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>indicator liability certificate</xsd:documentation>
					<xsd:documentation>
by choosing J  the 
gate-pass will be replaced if the container is full
Y = yes
N = no
          </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="SealNumber" type="String0..20" minOccurs="0" maxOccurs="99">
				<xsd:annotation>
					<xsd:documentation>official seal number</xsd:documentation>
					<xsd:documentation>
(e.g. customs seal)
only if sign empty/full = F
          </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Markings" type="String0..30" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>markings</xsd:documentation>
					<xsd:documentation>only for loose cargo if form type = L18 (release)</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ReleaseType">
		<xsd:sequence>
			<xsd:element name="AutomaticProcessing" type="String3..3" minOccurs="0" maxOccurs="4">
				<xsd:annotation>
					<xsd:documentation>automatic processing</xsd:documentation>
					<xsd:documentation>
the customer can a number of automatic processing features for the transport order 
rcv = automatic receiving
fwd = automatic forwarding (requires automatic receiving)
qst = automatic retrieval of the quay status (requires a specification of the loading /discharge location)
cfd = automatic forwarding depending on a positive quay status (requires automatic receiving and retrieval of the quay status)
          </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="LoadingLocation" type="String4..4" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>loading location</xsd:documentation>
					<xsd:documentation>according to HABIS code directory A07</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="FinalDestination" type="String0..20" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>final destination/ train station</xsd:documentation>
					<xsd:documentation>final destination/ train station of the container</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="OceanCarrier" type="OceanCarrierTyp"/>
			<xsd:element name="Dispatcher" type="DispatcherTyp"/>
			<xsd:element name="ReleaseDate" type="xsd:date" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>date of the release</xsd:documentation>
					<xsd:documentation>Format: YYYYMMDD</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Ship" type="ShipTyp" minOccurs="0"/>
			<xsd:element name="PortCode" type="String0..5" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>port code</xsd:documentation>
					<xsd:documentation>UN/LOCODE</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="ModeOfTransport" type="String1..1">
				<xsd:annotation>
					<xsd:documentation>mode of transport</xsd:documentation>
					<xsd:documentation>
R = rail, 
T = truck,
F = feeder
          </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Operator" type="String0..20" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>operator</xsd:documentation>
					<xsd:documentation>name of the truck/ feeder/ railway operator</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="OrderReference" type="String0..16" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>order reference</xsd:documentation>
					<xsd:documentation>reference of the transport order</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Comments" type="String0..20" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>comments</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="FormType" type="String3..3" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>form type</xsd:documentation>
					<xsd:documentation>
C18 = container
L18 = loose cargo
          </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Carrier" type="CarrierTyp" minOccurs="0"/>
			<xsd:element name="BLNumber" type="String0..12" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>B/L-number</xsd:documentation>
					<xsd:documentation>
bill of lading number according to the manifest
mandatory if form type = L18
          </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="WarehouseNumber" type="String4..4" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>warehouse number</xsd:documentation>
					<xsd:documentation>according to DAKOSY key directory warehouse number code (Schuppencode)</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Discharge" type="DischargeTyp" minOccurs="0"/>
			<xsd:element name="ReleaseContainer" type="ReleaseContainerTyp" maxOccurs="99"/>
		</xsd:sequence>
		<xsd:attribute name="ReferenceType" type="String0..35" use="required">
			<xsd:annotation>
				<xsd:documentation>type of reference used</xsd:documentation>
				<xsd:documentation>Release</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="Reference" type="String1..16" use="required"/>
		<xsd:attribute name="Version" type="Int2..2" use="required">
			<xsd:annotation>
				<xsd:documentation>version of the message / message element</xsd:documentation>
				<xsd:documentation>ascending sequence (not necassarily continuous) starting with version 01 (new transport order etc) - all versions above 01 are interpreted as a revision of previously communicated data</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:complexType>
	<xsd:complexType name="ShipTyp">
		<xsd:sequence>
			<xsd:element name="IATACode" type="String0..6" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>ships name code</xsd:documentation>
					<xsd:documentation>IATA-code / callsign of the vessel</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Name" type="String0..23" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>ship name</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="ETADate" type="xsd:date" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>eta-date</xsd:documentation>
					<xsd:documentation>Format: YYYYMMDD</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="VoyageNumber" type="String0..8" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>voyage number</xsd:documentation>
					<xsd:documentation>mandatory if form type = L18</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="String0..1">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="0"/>
			<xsd:maxLength value="1"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="String0..12">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="0"/>
			<xsd:maxLength value="12"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="String0..16">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="0"/>
			<xsd:maxLength value="16"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="String0..17">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="0"/>
			<xsd:maxLength value="17"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="String0..20">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="0"/>
			<xsd:maxLength value="20"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="String0..23">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="0"/>
			<xsd:maxLength value="23"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="String0..3">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="0"/>
			<xsd:maxLength value="3"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="String0..30">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="0"/>
			<xsd:maxLength value="30"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="String0..35">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="0"/>
			<xsd:maxLength value="35"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="String0..4">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="0"/>
			<xsd:maxLength value="4"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="String0..5">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="0"/>
			<xsd:maxLength value="5"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="String0..6">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="0"/>
			<xsd:maxLength value="6"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="String0..8">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="0"/>
			<xsd:maxLength value="8"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="String1..1">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="1"/>
			<xsd:maxLength value="1"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="String1..10">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="1"/>
			<xsd:maxLength value="10"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="String1..16">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="1"/>
			<xsd:maxLength value="16"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="String2..2">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="2"/>
			<xsd:maxLength value="2"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="String3..3">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="3"/>
			<xsd:maxLength value="3"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="String4..4">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="4"/>
			<xsd:maxLength value="4"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="transactionDef">
		<xsd:sequence>
			<xsd:element name="Descr" type="String0..35" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Transaction name</xsd:documentation>
					<xsd:documentation>Release</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Provider" type="String0..35" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Message provider</xsd:documentation>
					<xsd:documentation>name of the party who is responsible for the underlying scheme.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
		<xsd:attribute name="Version" type="xsd:string" use="required">
			<xsd:annotation>
				<xsd:documentation>Version of message definition</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="Code" type="String0..17" use="required">
			<xsd:annotation>
				<xsd:documentation>Message type</xsd:documentation>
				<xsd:documentation>Code defined by the provider for the specified transaction, e.g.</xsd:documentation>
				<xsd:documentation>GM01 = customs declaration</xsd:documentation>
				<xsd:documentation>AC02 = transport order</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="Type" type="xsd:string" use="required"/>
	</xsd:complexType>
	<xsd:complexType name="transactionInfo">
		<xsd:annotation>
			<xsd:documentation>Transaction information</xsd:documentation>
		</xsd:annotation>
	</xsd:complexType>
	<xsd:complexType name="userDef">
		<xsd:sequence>
			<xsd:element name="Name" type="String0..35"/>
			<xsd:element name="Phone" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Phone number</xsd:documentation>
					<xsd:documentation>plain text without validation. Either phone number or e-mail address must be filled if the user-element is transmitted.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Email" type="xsd:string" minOccurs="0"/>
			<xsd:element name="BusinessUnit" type="businessUnitDef" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
</xsd:schema>
